-- ======================================================================================
-- 模块

-- 声明一个模块
rectangle = {}

-- 为模块添加一个变量
rectangle.pi = 3.14

-- 为模块添加函数（求周长）
function rectangle.perimeter(a, b)
    return (a + b) * 2
end

-- 以匿名函数方式为模块添加一个函数（求面积）
rectangle.area = function (a, b)
    return a * b
end

-- ==============================定义与模块无关内容

-- 定义一个全局变量(与模块无关)
goldenRatio = 0.618

-- 定义一个局部函数（求圆的面积）
local function circularArea(r)
    return r * r * rectangle.pi
end

-- 定义一个全局函数(求矩形中最大圆的面积)
function maxCircularArea(a, b)
    local r = math.min(a, b) / 2
    return circularArea(r)
end

return rectangle